Voice over Internet Protocol (“VoIP”) is a transmission technology for delivering voice communication data over a broadband network, e.g., the Internet, instead of a regular, e.g., analog, phone line. Audio codecs within VoIP systems convert voice information into digital audio signals that can be transmitted over an IP network. VoIP enables users to make calls from a data processing apparatus, a special VoIP phone, or a traditional phone connected to a special adapter. VoIP systems can interface with public switched telephone lines to enable worldwide communication.
VoIP systems utilize data buffers when transmitting digital audio signals over IP networks. Data buffers implemented in software can be used to temporarily hold data to account for differences between the rate at which data is received and the rate at which data is processed. When the data buffer reaches a predefined threshold of stored data, audio playback of the stored data can commence. A small buffer can provide nearly instantaneous playback, but is vulnerable to adverse network channel conditions. A wider buffer can provide higher resilience to bandwidth and latency fluctuations occurring on the network, but can require a longer buffering time before audio playback.